home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / compuserve-file-archive / 23 Geos Applications / SERDRV.THD < prev    next >
Text File  |  2019-04-13  |  14KB  |  329 lines

  1. #: 19734 S13/GEOS Connection  I
  2.     24-Jun-89  20:21:56
  3. Sb: #Serial GEOS Driver
  4. Fm: <]Dave[> 72030,661
  5. To: *ALL
  6.  
  7. Am in DESPERATE need of aSERIAL printer driver, and/or someone that can help me
  8. out a little on where the devil I patch in the codes to change my printer
  9. initialisation, closeing, etc, for GEOS.  I can get the ImageWriter and Scribe
  10. drivers to send stuff to my printer (HP ThinkJet)
  11.  
  12. but am only getting crud for output, ie, letters & numbers that do NOT
  13. correspond with what I'm trying to print. I've found the area on the driver
  14. where a batch of ESCAPE codes are sent, but can't figure out which one(s) are
  15. doing what. HELP!  HELP!  HELP!  HELP! I'm even willing to putz around with it,
  16. if I could figure out what the devil those 'jump codes' mean at the start of my
  17. driver. Have the "documentation" by Al Boyce from DL13, and the jump codes are:
  18. 7903:4C007C 7909:4C427C 790C:4C557C - now, if I knew what those jumps went TO,
  19. I could probably figure it out, and eventually get it done.
  20.  
  21. HELP!  HELP!  HELP!  HELP! PUH-LEEEEEEEEEEEEEEEEZ?
  22.  
  23. E-Mail, or message here.  THANKS!! <]Dave[> 72030,661 I'm willing to do the
  24. 'work', I just need a little guidance and being pointed in the right direction.
  25.  
  26.  
  27.  
  28. #: 19735 S13/GEOS Connection  I
  29.     24-Jun-89  20:29:23
  30. Sb: #19734-#Serial GEOS Driver
  31. Fm: Ed Flinn/Sysop 76703,4032
  32. To: <]Dave[> 72030,661 (X)
  33.  
  34. Dave,
  35.    I still can't be much help.  The "jump codes" at the start of the driver is
  36. just a table of addresses of routines in the driver itself.  It's sort of a
  37. mini-kernal.  Since the routine to, for instance, print a line, will be at a
  38. different addresses in every driver, the jump table serves to provide standard
  39. addresses.  Always JSR to the appropriate entry in the table, which will then
  40. JMP to the correct address in that driver.  The jump table isn't data that gets
  41. sent to the printer.
  42.   I wish I could do more for you, but I don't have any experience with printer
  43. drivers.  I hope someone who can provide you with better information will join
  44. in.
  45.  
  46.  
  47. #: 19736 S13/GEOS Connection  I
  48.     24-Jun-89  20:54:32
  49. Sb: #19735-#Serial GEOS Driver
  50. Fm: <]Dave[> 72030,661
  51. To: Ed Flinn/Sysop 76703,4032 (X)
  52.  
  53. Ed, I knew that the jump table was only a set of pointers to the actual driver
  54. itself; my question i: what the devil are the values supposed to represent?
  55. Absolute jumps? Relative jumps? Addresses? ????? (sure wish I had that darn
  56. GEOS book! Or, even better, that BSW included some of this info in the
  57. manuals!!) Anyway, thanks. I just hope someone else in the forum will be able
  58. to help; I've got nothing against doing it myself, but, as I said, I just need
  59. to get pointed in the right direction! <]Dave[>
  60.  
  61.  
  62. #: 19737 S13/GEOS Connection  I
  63.     24-Jun-89  21:20:47
  64. Sb: #19736-#Serial GEOS Driver
  65. Fm: Ed Flinn/Sysop 76703,4032
  66. To: <]Dave[> 72030,661 (X)
  67.  
  68. Dave,
  69.   If I remember correctly, they are JMP instructions to the absole addresses of
  70. the appropriate routines.  The application does a JSR to the jump table, where
  71. a JMP points to a section of code, that ends in an RTS, so returning to the
  72. JSR'ing application.  The GEOS P.R.G. does have a section on printer drivers,
  73. though I don't imagine there's much there on whatever would be specific to
  74. serial printers.
  75.  
  76.  
  77. #: 19738 S13/GEOS Connection  I
  78.     24-Jun-89  21:39:53
  79. Sb: #19737-#Serial GEOS Driver
  80. Fm: <]Dave[> 72030,661
  81. To: Ed Flinn/Sysop 76703,4032 (X)
  82.  
  83. Ed; THAT'S the kind of information I need- though the JUMPs I've seen at the
  84. beginning of the drivers look more like RELATIVE jumps, instead of absolute-
  85. but at least now, when I go in and look at the little buggers, I've got some
  86. idea of what it is I'm looking at! Thanks for getting back to me AGAIN (I
  87. really do appreciate it!)- though I trust you'll understand if I hope that
  88. someone else jumps in, too! <]Dave[>
  89.  
  90.  
  91. #: 19739 S13/GEOS Connection  I
  92.     24-Jun-89  22:31:29
  93. Sb: #19738-#Serial GEOS Driver
  94. Fm: Ed Flinn/Sysop 76703,4032
  95. To: <]Dave[> 72030,661 (X)
  96.  
  97. Dave,
  98.    Remember the addresses in those jumps are in INTEL format, where the
  99. high-order byte of the address comes last.  I'm *pretty* sure they are
  100. absolute.  Printer drivers are loaded at $7900, and may extend to $7F3F, it
  101. says here.
  102.  
  103.  
  104. #: 19740 S13/GEOS Connection  I
  105.     24-Jun-89  22:37:13
  106. Sb: #19739-Serial GEOS Driver
  107. Fm: Ed Flinn/Sysop 76703,4032
  108. To: Ed Flinn/Sysop 76703,4032 (X)
  109.  
  110. Dave,
  111.    OK, now that I found the right page, the first jump is to InitForPrint,
  112. which intializes the printer, and is usually just an RTS.  The second is to
  113. StartPrint, which sort of opens a file to the printer, the third is to
  114. PrintBuffer, which prints 640 bytes worth of graphic cards, fourth is to
  115. StopPrint, which is the end-of-page routine, fifth is GetDimensions, which
  116. returns the dimensions of a page, in graphic cards.
  117.   If present, the sixth is to PrintASCII, which prints a null-terminated ASCII
  118. string, seventh is to StartASCII, which initializes the printer for ASCII
  119. printing, and last is to SetNLQ, which doesn't seem to be explained in the
  120. book, but I bet it sets the printer for NLQ mode <grin>.
  121.  
  122. #: 19748 S13/GEOS Connection  I
  123.     25-Jun-89  12:44:52
  124. Sb: #19739-#Serial GEOS Driver
  125. Fm: <]Dave[> 72030,661
  126. To: Ed Flinn/Sysop 76703,4032 (X)
  127.  
  128. Ed; sat down last night (after my last message) and started going through the
  129. jumps, etcuntil 2:00! Have gotten all the JMP routines; planning to 'de-code'
  130. the JSRs that are called today. GAD! I'm learning more about assembly and
  131. printer drivers than I really thought that I wanted to! Still, I suppose it's
  132. "good" for me- you know, one of those "learning experiences".... I gotta tell
  133. you- this is NO WAY to be learning assembly, trying to de-cipher someone else's
  134. code! <]Dave[>
  135.  
  136.  
  137. #: 19750 S13/GEOS Connection  I
  138.     25-Jun-89  13:16:50
  139. Sb: #19748-#Serial GEOS Driver
  140. Fm: Ed Flinn/Sysop 76703,4032
  141. To: <]Dave[> 72030,661 (X)
  142.  
  143. Dave,
  144.     Nope, trying to learn from disassembly is no fun at all.  There are, I
  145. suppose, some people that like that sort of thing.  I'd watch out for them
  146. <grin>
  147.  
  148.  
  149. #: 19760 S13/GEOS Connection  I
  150.     26-Jun-89  20:52:32
  151. Sb: #19750-Serial GEOS Driver
  152. Fm: <]Dave[> 72030,661
  153. To: Ed Flinn/Sysop 76703,4032 (X)
  154.  
  155. "we have met the enemy, and he is us"!
  156.  
  157. #: 19810 S13/GEOS Connection  I
  158.     29-Jun-89  21:08:41
  159. Sb: #19748-Serial GEOS Driver
  160. Fm: Anthony Marsh 72127,2301
  161. To: <]Dave[> 72030,661
  162.  
  163. I don't know which system you have and which printer driver you're trying to
  164. work with, but here are a few tips. You can easily examine printer drivers by
  165. CONVERTing one, then doing an absolute LOAD so that the beginning of the JMP
  166. table will end up at $7900. Then I would suggest doing a hard copy of the
  167. disassembly. Also, a few issues back, GEOWORLD had a very good article about
  168. printer drivers. I don't remember which issue off-hand, but ask around and see
  169. if any store has some old issues. BTW, what I needed to do was pretty easy, but
  170. really helped. I changed the line feed from 7/72" to 21/216" and it is much
  171. nicer now. Also changed the device number from 4 to 5 and can use either my
  172. dot-matrix or letter quality printer at the same time with a Y-NOT cable. Very
  173. handy gadget. Tony
  174.  
  175.  
  176.  
  177. #: 19827 S13/GEOS Connection  I
  178.     30-Jun-89  20:23:23
  179. Sb: #19810-#Serial GEOS Driver
  180. Fm: <]Dave[> 72030,661
  181. To: Anthony Marsh 72127,2301
  182.  
  183. Tony; have already gotten the disassembly done- not much fun, doing it by
  184. de-coding the "A9 79 C2"-s!! Haven't been receiving GeoWorld, etc
  185.  
  186.  yet; haven't gotten any word on subscription price, etc from them yet.
  187.   My dot-matrix (Epson Fx-85+) is fine, particularly when I use the LaserMatrix
  188. driver (!!!!); I'd just like to be able to use the ThinkJet
  189.  
  190. , too- it's a little quieter, etc.  All I REALLY need is a SERIAL FX-80 or
  191. FX-100 driver; the ThinkJet has those emulation modes.  SIGH.
  192.  
  193.  
  194. #: 19829 S13/GEOS Connection  I
  195.     30-Jun-89  21:39:15
  196. Sb: #19827-Serial GEOS Driver
  197. Fm: Ed Flinn/Sysop 76703,4032
  198. To: <]Dave[> 72030,661
  199.  
  200. Dave,
  201.    FYI, geoWorld costs $20 for 12 issues.  It's published irregularly, though
  202. they're getting closer to monthly than they were in the past.
  203.  
  204.  
  205. #: 19866 S13/GEOS Connection  I
  206.     02-Jul-89  10:17:32
  207. Sb: #19829-#Serial GEOS Driver
  208. Fm: <]Dave[> 72030,661
  209. To: Ed Flinn/Sysop 76703,4032 (X)
  210.  
  211. Ed; thanks, that's the kind of info I needed- now I can just compose a
  212. subscription letter, send the money, and do the whole thing at once.
  213.  
  214. BTW, would you know if GeoProgrammer >REALLY< works on the 128 in >128< mode
  215. (Geos 128)?  I've had other people tell me that it does, yet all the ads I've
  216. seen imply that it's for 64 mode ONLY. ???? Thanks.  <]Dave[>
  217.  
  218.  
  219. #: 19870 S13/GEOS Connection  I
  220.     02-Jul-89  11:44:42
  221. Sb: #19866-#Serial GEOS Driver
  222. Fm: Ed Flinn/Sysop 76703,4032
  223. To: <]Dave[> 72030,661 (X)
  224.  
  225. Dave,
  226.    Out of the box, geoProgrammer won't run under GEOS 128 at all.  There's a
  227. byte in the file header that tells GEOS what modes the program is eligible for,
  228. and for all three programmer applications, it's set to "64 only".  You can
  229. change that byte on your workdisk copy, of course.
  230.    geoProgrammer and geoLinker will run just fine in 40 columns, once you've
  231. enabled that mode.  They'll also run at 80 columns, if you enable it, but the
  232. screen is going to be very strange looking, since the program is coded for 40.
  233. Still, some people do use it that way.
  234.    Unfortunately, the deBugger can't be made to run under GEOS 128 at all.
  235. Enabling it will do you no good at all, since it relies on some things in the
  236. systems ROMs, and they aren't there in 128 mode.  I've heard rumors that people
  237. have successfully patched the deBugger for 128/80, but I haven't seen the thing
  238. work, myself.
  239.  
  240.  
  241. #: 19872 S13/GEOS Connection  I
  242.     02-Jul-89  12:31:55
  243. Sb: #19870-#Serial GEOS Driver
  244. Fm: <]Dave[> 72030,661
  245. To: Ed Flinn/Sysop 76703,4032 (X)
  246.  
  247. crud- I think that I went and requested GeoProgrammer under that nifty free
  248. program promotion that BSW is running.  Well, maybe I can still use at least
  249. PART of it; tho' I DO wish more of this stuff was written for us 128 users in
  250. mind, as well as all the 64 users out there.  I thought that getting a 128
  251. would be a step UP, what with the extra memory, 80 columns, etc; but I'm
  252. rapidly coming to the conclusion that the 128 is going to wind up going the way
  253. of the SX-64, kind of a Commodore version of the PCjr! <]Dave[>
  254.  
  255.  
  256. #: 19874 S13/GEOS Connection  I
  257.     02-Jul-89  14:41:05
  258. Sb: #19872-#Serial GEOS Driver
  259. Fm: Ed Flinn/Sysop 76703,4032
  260. To: <]Dave[> 72030,661 (X)
  261.  
  262. Dave,
  263.    All along we were told that there'd by a 'Programmer for the 128, and,
  264. apparently, it's all written and ready, but BSW isn't going to market it in the
  265. foreseeable future.  It's the only GEOS package I can think of where there's
  266. neither a 128 version, nor the ability to run the 64 version under 128.
  267.   Do you not have GEOS 64 at all, then?
  268.  
  269.  
  270. #: 19875 S13/GEOS Connection  I
  271.     02-Jul-89  18:12:35
  272. Sb: #19874-Serial GEOS Driver
  273. Fm: <]Dave[> 72030,661
  274. To: Ed Flinn/Sysop 76703,4032 (X)
  275.  
  276. Ed; that's right, I've only got Geos 128, under the theory that I've got a 128,
  277. and should therefor be able to run it as such, NOT a glorified 64.  This, too,
  278. is one of the ways that C= (and the C= 'community') is cheating itselfin that
  279. with a 64 "built in", along with the 'normal' 128, C= is, essentially,
  280. encouraging people not to program for the 128 (not many people have them, even
  281. now!).  Instead, people are buying the 128 so they can use a few of the
  282. programs that it will handle in 80 columns (word processors, etc); not many are
  283. buying it for the large amounts of software available for it in the 128 mode. 
  284. If they want ready access to a large software library, they switch it over to
  285. the 64 mode, and accept the lower-quality graphics, miserable (compared to 80
  286. column color!) text, half the memory, etc.  About the only time I switch the
  287. thing over to 64 mode is when I HAVE to; unlike most folks (or so it seems), I
  288. try to use it in 128 mode as much as possible, and switch over only when
  289. necessary, such as running a de-arc program (haven't found one for 128 mode,
  290. yet!), and so on.  Even within the sparse 128 community, most folks are using
  291. it with a 40-column monitor, so it's hard to find things that run in 80-column
  292. mode!  I've got an 'official' IBM color monitor, and the thing is a blessing
  293. for word-processing- yet if I want color graphics, I have to switch over to my
  294. old 1702 color monitor, with it's miserable resolution.  I've wound up getting
  295. into more than a few programs, and modifying them to support EITHER monitor
  296. (easy enough to do...); apparently, the author only had a 40-col monitor, and
  297. didn't want to bother with allowing 80-col (that, and C= made programming for
  298. color graphics no small chore!).  Those of us that want decent displays,
  299. whether graphics or text, video or hardcopy, are left wanting where the
  300. Commodore is concerned.  The pity is that the machine is capable of so much
  301. more, but the support is what's keeping it back:
  302.  
  303.  
  304. #: 19911 S13/GEOS Connection  I
  305.  
  306.     06-Jul-89  21:39:40
  307. Sb: #19827-#Serial GEOS Driver
  308. Fm: Anthony Marsh 72127,2301
  309. To: <]Dave[> 72030,661 (X)
  310.  
  311. I'll ask around my user group and see if anyone is using the Thinkjet. One is
  312. using one of those types, but not sure which model. BTW, that GEOWORLD issue
  313. was Vol. I, issue #5 about designing Quad printer drivers. Tony
  314.  
  315.  
  316. #: 19922 S13/GEOS Connection  I
  317.     07-Jul-89  20:39:18
  318. Sb: #19911-Serial GEOS Driver
  319. Fm: <]Dave[> 72030,661
  320. To: Anthony Marsh 72127,2301
  321.  
  322. Tony; thanks, would GREATLY appreciate it!  I'm into modifying this ImageWriter
  323. driver far enough that I'm starting to dream (have nightmares?) about JSRs, and
  324. LDAs, and INXs, and..... Anyway, if you can't upload the driver, then don't
  325. worry about it too much- I've gotten enough info that I could probably get the
  326. sucker going, if I fool with it long enough. <]Dave[>
  327.  
  328.  
  329.